From 5091496ea3d95b607fb0f070cf1a1d787f40d8ac Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 1 Dec 2021 23:08:19 +0100 Subject: [PATCH] luci-mod-network: fix loading ra_mtu and ra_hoplimit options Fixes: #5565 Signed-off-by: Jo-Philipp Wich (cherry picked from commit d19d717de241fccb655cb9651f3b10e998dd62c3) --- .../resources/view/network/interfaces.js | 32 +++++++++++-------- 1 file changed, 18 insertions(+), 14 deletions(-) diff --git a/modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js b/modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js index 86075c1a8f..a730dc4d71 100644 --- a/modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js +++ b/modules/luci-mod-network/htdocs/luci-static/resources/view/network/interfaces.js @@ -835,15 +835,17 @@ return view.extend({ so.depends('ra', 'server'); so.depends({ ra: 'hybrid', master: '0' }); so.load = function(section_id) { - var dev = ifc.getL3Device(); + var dev = ifc.getL3Device(), + path = dev ? "/proc/sys/net/ipv6/conf/%s/mtu".format(dev.getName()) : null; - if (dev) { - var path = "/proc/sys/net/ipv6/conf/%s/mtu".format(dev.getName()); + return Promise.all([ + dev ? L.resolveDefault(fs.read(path), dev.getMTU()) : null, + this.super('load', [section_id]) + ]).then(L.bind(function(res) { + this.placeholder = +res[0]; - return L.resolveDefault(fs.read(path), dev.getMTU()).then(L.bind(function(data) { - this.placeholder = data; - }, this)); - } + return res[1]; + }, this)); }; so = ss.taboption('ipv6-ra', form.Value, 'ra_hoplimit', _('RA Hop Limit'), _('The maximum hops to be published in RA messages. Maximum is 255 hops.')); @@ -852,15 +854,17 @@ return view.extend({ so.depends('ra', 'server'); so.depends({ ra: 'hybrid', master: '0' }); so.load = function(section_id) { - var dev = ifc.getL3Device(); + var dev = ifc.getL3Device(), + path = dev ? "/proc/sys/net/ipv6/conf/%s/hop_limit".format(dev.getName()) : null; - if (dev) { - var path = "/proc/sys/net/ipv6/conf/%s/hop_limit".format(dev.getName()); + return Promise.all([ + dev ? L.resolveDefault(fs.read(path), 64) : null, + this.super('load', [section_id]) + ]).then(L.bind(function(res) { + this.placeholder = +res[0]; - return L.resolveDefault(fs.read(path), 64).then(L.bind(function(data) { - this.placeholder = data; - }, this)); - } + return res[1]; + }, this)); }; -- 2.30.2